// import { jsSleep } from '../../../public/common/utils';
//
// function getDefaultObj() {
//     return {
//         htmlTag: '', // 目标对象
//         action: '', // 操作类型 goto type  click  imgSrc getAttr downImg
//         ajaxExp: 2000, // 超时时间 单位毫秒
//         attr: '', // html 属性值
//         value: '', // html值
//         urlStr: '', // url地址
//         waitUrl: '', // 等待url
//         imgSrc: '', // 图片路径
//         localStorageKey: '', // localStorageKey key值
//         sessionStorageKey: '', // localStorageKey key值
//     };
// }
//
// let PAGE_INFO = {};
// let PAGE_INFO_WATCH = {};
// export class opLine {
//     // 构造函数
//     static async gotoAction(url) {
//         let dx = getDefaultObj();
//         dx.action = 'goto';
//         dx.urlStr = url;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async typeAction(htmlTag, value) {
//         let dx = getDefaultObj();
//         dx.action = 'type';
//         dx.htmlTag = htmlTag;
//         dx.value = value;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async selectValueAction(htmlTag, value) {
//         let dx = getDefaultObj();
//         dx.action = 'selectValue';
//         dx.htmlTag = htmlTag;
//         dx.value = value;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async clickAction(htmlTag) {
//         let dx = getDefaultObj();
//         dx.action = 'click';
//         dx.htmlTag = htmlTag;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async getAttrAction(htmlTag, attr) {
//         let dx = getDefaultObj();
//         dx.action = 'getAttr';
//         dx.htmlTag = htmlTag;
//         dx.attr = attr;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async downImgAction(imgSrc) {
//         let dx = getDefaultObj();
//         dx.action = 'downImg';
//         dx.imgSrc = imgSrc;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     // 等待页面加载完成
//     static async waitForNavigationAction() {
//         try {
//             let dx = getDefaultObj();
//             dx.action = 'waitForNavigation';
//             await window.PUPPETEER.operaPage(dx);
//             await jsSleep(500);
//             return '1';
//         } catch (e) {
//             console.log('waitForNavigation超时错误', e);
//         }
//         // return dx;
//     }
//
//     // 等待页面加载完成
//     static async waitForSelectorAction(htmlTag) {
//         let dx = getDefaultObj();
//         dx.action = 'waitForSelector';
//         dx.htmlTag = htmlTag;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async getLocalStorageByKeyAction(key) {
//         let dx = getDefaultObj();
//         dx.action = 'getLocalStorageByKey';
//         dx.localStorageKey = key;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async setStorageByKeyAction(key, val, isSession = false) {
//         let dx = getDefaultObj();
//         dx.action = 'setStorageByKeyAction';
//         dx.localStorageKey = key;
//         if (isSession) {
//             dx.sessionStorageKey = key;
//         } else {
//             dx.localStorageKey = key;
//         }
//         dx.value = val;
//         return await window.PUPPETEER.operaPage(dx);
//     }
//     static async clearStorageByKeyAction(isSession = false) {
//         let dx = getDefaultObj();
//         dx.action = 'clearStorageByKeyAction';
//         if (isSession) {
//             dx.sessionStorageKey = 'sessionStorageKey';
//         } else {
//             dx.localStorageKey = 'localStorageKey';
//         }
//         return await window.PUPPETEER.operaPage(dx);
//     }
//
//     // 等待页面加载完成
//     static async getPageUrlAction() {
//         let dx = getDefaultObj();
//         dx.action = 'getPageUrl';
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//     static async hasAjaxForDateAction(ajaxExp) {
//         let dx = getDefaultObj();
//         dx.action = 'hasAjaxForDate';
//         if (ajaxExp) {
//             dx.ajaxExp = +ajaxExp;
//         } else {
//             dx.ajaxExp = 2000;
//         }
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     static async waitForResponseAction(url) {
//         let dx = getDefaultObj();
//         dx.action = 'waitForResponse';
//         dx.waitUrl = url;
//         return await window.PUPPETEER.operaPage(dx);
//         // return dx;
//     }
//
//     // 打开并监听页面url请求数量
//     static async openAndlistenPageRequestNum(pageName) {
//         await window.PUPPETEER.operaStart(pageName);
//         // PAGE_INFO[pageName] = { reqNum: 0 };
//         // PAGE_INFO_WATCH[pageName] = [];
//         // window.onIpcRenderer.PUPPETEER_PAGE_REQUEST(async (e, data) => {
//         //     console.log('请求数量发送：', data);
//         //     //curPageName
//         //     // reqNum
//         //     PAGE_INFO[data.curPageName] = { reqNum: data.reqNum };
//         //     for (let i = 0; i < PAGE_INFO_WATCH[pageName].length; i++) {
//         //         if (PAGE_INFO_WATCH[pageName][i] && typeof PAGE_INFO_WATCH[pageName][i] === 'function') {
//         //             PAGE_INFO_WATCH[pageName][i](PAGE_INFO[pageName]);
//         //         }
//         //     }
//         // });
//     }
//
//     // 等待page页面没有为0的请求
//     static async pageNotRequestNum(pageName, outTime = 6000) {
//         return new Promise((resolve, reject) => {
//             let outFun = setTimeout(() => {
//                 console.log('PAGE_INFO', PAGE_INFO);
//                 PAGE_INFO_WATCH[pageName] = [];
//                 reject(new Error(`超过${outTime}依然存在请求${PAGE_INFO[pageName].reqNum}`));
//             }, outTime);
//             // 等待连续2秒判断是否还存在请求
//             jsSleep(2000).then(() => {
//                 if (PAGE_INFO[pageName].reqNum === 0) {
//                     PAGE_INFO_WATCH[pageName] = [];
//                     clearTimeout(outFun);
//                     resolve();
//                 }
//                 PAGE_INFO_WATCH[pageName].push((pageInfo) => {
//                     console.log('触发PAGE_INFO_WATCH', pageInfo);
//                     if (pageInfo.reqNum === 0) {
//                         PAGE_INFO_WATCH[pageName] = [];
//                         clearTimeout(outFun);
//                         resolve();
//                     }
//                 });
//             });
//         });
//     }
// }
